package com.zhiche.lisa.bms.dao.model.receipt;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 收款确认
 * </p>
 *
 * @author hongbo
 * @since 2018-09-27
 */
@TableName("lisa_receipt_affirm")
public class ReceiptAffirm extends Model<ReceiptAffirm> {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * 收款单号
     */
    @TableField("bill_code")
    private String billCode;
    /**
     * 付款方名称
     */
    @TableField("pay_name")
    private String payName;
    /**
     * 创建人
     */
    private Long creator;
    /**
     * 到账金额
     */
    private BigDecimal sum;
    /**
     * 已收金额
     */
    @TableField("receipt_sum")
    private BigDecimal receiptSum;
    /**
     * 差异金额
     */
    @TableField("diff_sum")
    private BigDecimal diffSum;
    /**
     * 差异原因
     */
    @TableField("diff_cause")
    private String diffCause;
    /**
     * 创建时间
     */
    @TableField("gmt_create")
    private Date gmtCreate;
    /**
     * 创建时间
     */
    @TableField("entering_date")
    private Date enteringDate;
    /**
     * 租户id
     */
    @TableField("tenant_id")
    private Long tenantId;
    /**
     * 状态：0-待收款、1-部分收款、2-已收款
     */
    private Integer state;

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getBillCode() {
        return billCode;
    }

    public void setBillCode(String billCode) {
        this.billCode = billCode;
    }

    public String getPayName() {
        return payName;
    }

    public void setPayName(String payName) {
        this.payName = payName;
    }

    public Long getCreator() {
        return creator;
    }

    public void setCreator(Long creator) {
        this.creator = creator;
    }

    public BigDecimal getSum() {
        return sum;
    }

    public void setSum(BigDecimal sum) {
        this.sum = sum;
    }

    public BigDecimal getReceiptSum() {
        return receiptSum;
    }

    public void setReceiptSum(BigDecimal receiptSum) {
        this.receiptSum = receiptSum;
    }

    public BigDecimal getDiffSum() {
        return diffSum;
    }

    public void setDiffSum(BigDecimal diffSum) {
        this.diffSum = diffSum;
    }

    public String getDiffCause() {
        return diffCause;
    }

    public void setDiffCause(String diffCause) {
        this.diffCause = diffCause;
    }

    public Date getGmtCreate() {
        return gmtCreate;
    }

    public void setGmtCreate(Date gmtCreate) {
        this.gmtCreate = gmtCreate;
    }

    public Date getEnteringDate() {
        return enteringDate;
    }

    public void setEnteringDate(Date enteringDate) {
        this.enteringDate = enteringDate;
    }

    public Long getTenantId() {
        return tenantId;
    }

    public void setTenantId(Long tenantId) {
        this.tenantId = tenantId;
    }

    public Integer getState() {
        return state;
    }

    public void setState(Integer state) {
        this.state = state;
    }

    @Override
    protected Serializable pkVal() {
        return this.id;
    }

    @Override
    public String toString() {
        return "ReceiptAffirm{" +
                "id=" + id +
                ", billCode='" + billCode + '\'' +
                ", payName='" + payName + '\'' +
                ", creator=" + creator +
                ", sum=" + sum +
                ", receiptSum=" + receiptSum +
                ", diffSum=" + diffSum +
                ", diffCause='" + diffCause + '\'' +
                ", gmtCreate=" + gmtCreate +
                ", enteringDate=" + enteringDate +
                ", tenantId=" + tenantId +
                ", state=" + state +
                "} " + super.toString();
    }
}
